package com.qdu.bussiness.service;

import java.util.List;
import com.qdu.bussiness.domain.BusTicketPurchase;
import com.qdu.common.core.domain.AjaxResult;

/**
 * 购票记录Service接口
 * 
 * @author qdu
 * @date 2022-03-06
 */
public interface IBusTicketPurchaseService 
{
    /**
     * 查询购票记录
     * 
     * @param purchaseId 购票记录主键
     * @return 购票记录
     */
    public BusTicketPurchase selectBusTicketPurchaseByPurchaseId(Long purchaseId);

    /**
     * 查询购票记录列表
     * 
     * @param busTicketPurchase 购票记录
     * @return 购票记录集合
     */
    public List<BusTicketPurchase> selectBusTicketPurchaseList(BusTicketPurchase busTicketPurchase);

    /**
     * 新增购票记录
     * 
     * @param busTicketPurchase 购票记录
     * @return 结果
     */
    public AjaxResult insertBusTicketPurchase(BusTicketPurchase busTicketPurchase);

    /**
     * 修改购票记录
     * 
     * @param busTicketPurchase 购票记录
     * @return 结果
     */
    public int updateBusTicketPurchase(BusTicketPurchase busTicketPurchase);

    /**
     * 批量删除购票记录
     * 
     * @param purchaseIds 需要删除的购票记录主键集合
     * @return 结果
     */
    public int deleteBusTicketPurchaseByPurchaseIds(Long[] purchaseIds);

    /**
     * 删除购票记录信息
     * 
     * @param purchaseId 购票记录主键
     * @return 结果
     */
    public int deleteBusTicketPurchaseByPurchaseId(Long purchaseId);

    /**
     * 核销门票
     * @param purchaseId
     * @return
     */
    AjaxResult verifyTicketPurchase(Long purchaseId);

    /**
     * 获取当前用户今天的门票情况
     * @return
     */
    BusTicketPurchase getTodayTicketPurchase();

    /**
     * 获取所有人今天的门票情况
     * @return
     */
    List<BusTicketPurchase> getTodayAllTicketPurchase();
}
